package br.unicamp.ic.mc906.kmeans;

import java.util.List;

/**
 * Inteface responsavel por padronizar o uso da distancia
 * @param <T> Classe ao qual a distancia se refere.
 */
public interface KmeansInterface<T> {

	/**
	 * Metodo que implementa a distancia euclidiana
	 * @return distancia euclidiana entre dois pontos
	 */
	public double getDistance(T element);
	
	/**
	 * Metodo que retorna do novo centro de um conjuto de pontos
	 * @param elements
	 * @return
	 */
	public T centroidOfCluster(List<T> elements);
}
